home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 034a / fdla101.zip / FDLA.DOC < prev    next >
Text File  |  1992-01-15  |  24KB  |  516 lines

  1.  
  2.  
  3.                   FrontDoor Log Analyzer - FDLA Version 1.01
  4.             Copyright 1991 by R.J. (Bob) Ross - ALL RIGHTS RESERVED
  5.                  SysOp - RJ's Byteline BBS - FidoNet 1:134/75
  6.  
  7.                                15 January, 1992
  8.  
  9.  
  10.     Short Preamble
  11.     --------------
  12.  
  13.     FDLA is a filter program to extract information contained in the
  14.     FrontDoor logfile generated by the FrontDoor program.  It provides a
  15.     summary of the incoming/outgoing calls, mail/file transfers, session
  16.     costs undialable nodes and BBS caller activity over the period covered
  17.     by the FrontDoor log file.  FDLA needs a "all events processed log
  18.     level except for remote system info and AKA's" to generate a log with
  19.     sufficient detail.  I believe this is an option in setting up FrontDoor
  20.     using FDSETUP.
  21.  
  22.     I claim no credit for any portion of FrontDoor or QSort programs.  All
  23.     Advanced Engineering sarl and Joaquim H. Homrighausen products are
  24.     trademarks or registered trademarks of Advanced Engineering sarl or
  25.     Joaquim H. Homrighausen.  QSort Text Sort program is copyright by Ben
  26.     Baker.
  27.  
  28.     FDLA is free for use in a non commercial environment and may be copied
  29.     and distributed freely and publicly for this purpose.  I do request
  30.     that you register your copy of FDLA though.  This is primarily to feed
  31.     my ego and satisfy my curiosity on where my programs are being used. I
  32.     have a world map on my wall and stick map pins in at the geographical
  33.     location of known users of my programs.  Please see Register.txt
  34.     included with this documentation.  If you use FDLA I ask that you take
  35.     a few moments to complete it and send it off to me.
  36.  
  37.     Commercial establishments who wish to use FDLA, please contact me.  We
  38.     can work something out.
  39.  
  40.     FDLA is distributed "as is" and is guaranteed to do nothing except take
  41.     up space on your disk.  I do hope that you will find it more useful
  42.     though.  It does run on my IBM clone machine and the IBM compatible
  43.     machines that it has been beta tested on.
  44.  
  45.     Kick Start
  46.     ----------
  47.  
  48.     For a "kick start" just place FDLA.EXE in any convenient directory on
  49.     your hard disk but preferably in the same directory that FrontDoor
  50.     creates it's log file in.  At the DOS prompt, type FDLA -H to display
  51.     the help screen.
  52.  
  53.     Command Line Switches
  54.     ---------------------
  55.  
  56.     FDLA [<-switch>] [LOG=logfilename]
  57.  
  58.     All switches are optional as is the log filename and may be given in
  59.     any order. Parsing of switches -H, -LL and -SN, are in -SN, -H and -LL
  60.     order and are exclusive for obvious reasons.  If no command line
  61.     arguments are given, FDLA defaults to creating FDLARpt.Txt and uses the
  62.     FrontDoor log (FD.LOG) in the default directory.
  63.  
  64.  
  65.  
  66.  
  67.  
  68.                                      - 2 -
  69.  
  70.         Switches
  71.         -------
  72.                  No switch on the command line will produce FDLARpt.Txt
  73.                  providing that FDLA resides in the same directory as the
  74.                  FrontDoor log file and a log file exists in the name of
  75.                  FD.LOG.
  76.  
  77.         -D       Will make a data file FDLARpt.Dat containing the data,
  78.                  plus some additional data, displayed in Part I of the
  79.                  output report (FDLARpt.Txt) file.  FDLARpt.Dat is a comma
  80.                  delimited text file which may be useful for other
  81.                  applications.  A record field description of FDLARpt.Dat
  82.                  file is outlined in Annex B to this document file.
  83.  
  84.         -EXN     This is a very powerful cloaking feature which will allow
  85.                  you to exclude whole Zones, Networks, and/or Nodes etc
  86.                  from FDLARpt.Txt. Example: -EXN,Net:Node (ie -EXN,1:134)
  87.                  will exclude a whole Network. -EXN,1:,2: would exclude all
  88.                  Zone 1 and Zone 2 Network Nodes. -EXN,1:134/75 would
  89.                  exclude only Node 75 in Zone 1 Net 134. Note: -EXN
  90.                  parameters are delimited by a comma (,). A maximum of 10
  91.                  parameters may be used. If this feature is used, FDLA will
  92.                  behave as though no log entry occurred for the stated -EXN
  93.                  parameter(s).
  94.  
  95.         -H       A brief help screen which describes the switches used to
  96.                  determine the program options or behaviour.
  97.  
  98.         -KTF     Will cause the temporary work files created by FDLA to be
  99.                  retained.  Temporary files created are:
  100.  
  101.                        FDLATmp.$$$  - created to hold data extracted from
  102.                                       the log file file to produce Part I
  103.                                       of the FDLA output report file to
  104.                                       summarize mail transfers and
  105.                                       incoming/outgoing calls.
  106.  
  107.                        FDLATmp.$$S  - Sorted output from FDLATmp.$$$ input.
  108.  
  109.                        FDLATmpF.$$$ - created to hold data extracted from
  110.                                       the log file to produce Part II of
  111.                                       the FDLA output report file to
  112.                                       itemize file transfers.
  113.  
  114.                        FDLATmpF.$$S - Sorted output from FDLATmpF.$$$
  115.                                       input.
  116.  
  117.                        FDLATmpC.$$$ - A picture image of Session Cost Part
  118.                                       III portions of the output report
  119.                                       minus the closing last line.
  120.  
  121.                        FDLATmpU.$$$ - created to hold data extracted from
  122.                                       the log file to produce Part IV -
  123.                                       Undialable Nodes.
  124.  
  125.                        FDLATmpU.$$S - Sorted output from FDLATmpU.$$$
  126.  
  127.         -L       List FDLARpt.Txt to the screen after it has been produced
  128.                  by FDLA.  The list procedure supports PgUp, PgDn, left,
  129.                  right, up down arrow keys, Esc and X to exit.
  130.  
  131.  
  132.  
  133.  
  134.                                      - 3 -
  135.  
  136.         -LL      Will list that last created FDLARpt.Txt residing in FDLA's
  137.                  home directory if it exists.
  138.  
  139.         -NHA     By default, FDLA will use high Ascii characters to draw
  140.                  the boxes for the FDLARpt.Txt file output report.  Using
  141.                  the -NHA switch will make FDLA use only low Ascii
  142.                  characters (-+|) to draw borders and boxes for the report.
  143.  
  144.         -SN      System Name.  Allows you to modify the FDLA.EXE program to
  145.                  include your System Name.  If this switch is selected you
  146.                  will be prompted to enter your System Name.  Upon
  147.                  completion, FDLA will modify itself and exit to DOS.
  148.                  Subsequent runs that generate FDLARpt.Txt will then print
  149.                  your System Name at the top of the output report.
  150.  
  151.                  NOTE: This option will not work if you compress FDLA.EXE
  152.                  using an execute file compressor (LZEXE, PKLITE, etc)
  153.                  prior to modifying the FDLA execute file to include your
  154.                  system name.  If you do, I can almost guarantee that you
  155.                  will lock up your system if you try to run FDLA after
  156.                  compression.  You should be able to use the -SN option to
  157.                  add your System Name and then compress the execute file
  158.                  though.
  159.  
  160.         -SUP     A powerful cloaking feature that will allow you to
  161.                  suppress the display of selected file names in Part II of
  162.                  FDLARpt.Txt.  Example -SUP,.LZH,.ZIP will suppress display
  163.                  of all files with an extension of LZH and ZIP.
  164.                  -SUP,Nodediff will suppress display of all files that
  165.                  match "NODEDIFF".  Note:  Filename parameters are
  166.                  delimited by a comma (,).  A maximum of 10 parameters may
  167.                  be used.
  168.  
  169.         LOG=     LOG=drive:\path\log filename.  Allows FDLA to run using
  170.                  log file names other than FD.LOG in the default directory
  171.                  or to run on a drive or in a directory other than where
  172.                  the log file is maintained by FrontDoor.
  173.  
  174.  
  175.     Pitfalls
  176.     --------
  177.  
  178.     Some resident virus detectors may complain about FDLA.EXE being
  179.     modified when you use the -SN switch.  Also see NOTE under -SN
  180.     regarding compressing FDLA.EXE.
  181.  
  182.     I have one example of a cost record in a FD.LOG that exceeds 32767
  183.     which would indicate that a single sessionn long distance call would be
  184.     $327.67.  I have ignored such records where the cost exceeds $300.00 in
  185.     Part III as I now assume that this is a bug in the FD.LOG output.  FDLA
  186.     Version 1.00 would crash when numbers exceeded 32,767 while running the
  187.     cost algorithm.  This and subsequent versions should work OK by
  188.     ignoring these entries.  Those who frequently make long distance calls
  189.     in excess of $300.00 per session can send me equivalent cash and I'll
  190.     provide a custom copy of FDLA to record the cost of these calls. :-)
  191.  
  192.  
  193.  
  194.  
  195.  
  196.    As mentioned earlier, FDLA creates some temporary work files. If you
  197.  
  198.                                      - 4 -
  199.  
  200.     As mentioned earlier, FDLA creates some temporary work files. If you
  201.     run out of disk space while FDLA is executing, this is probably the
  202.     reason why.  The solution; more disk space or smaller log files. Unless
  203.     you use the -KTF switch, the work files will be deleted from your disk
  204.     when FDLA has completed it's final output report.  The used disk space
  205.     consumed by the temporary files will then be returned to your system.
  206.  
  207.     FDLA needs to go out to DOS to externally sort some of it's work files
  208.     (FDLATmp?.$$$).  The default sort program used is QSort by Ben Baker. If
  209.     DOS fails to find QSORT an error is returned to FDLA and it then looks
  210.     for the DOS SORT program on your path and re-starts the sort process.
  211.     If neither program can be found, FDLA exists with a file not found
  212.     error.
  213.  
  214.     I highly recommend the use QSORT because it's much faster than SORT,
  215.     uses less memory and will sort a file of any size subject to disk space
  216.     limitations.  If the sort is unsuccessful then the FDLA will terminate
  217.     with a DOS error level of 1. If the program ends with an Out of Data
  218.     error and indicates that file FDLATmp.$$S is nul, chances are you
  219.     either ran out of memory or disk space.  If you use the regular DOS
  220.     SORT utility on LARGE log files, your chances of FDLA failing are VERY
  221.     GOOD.  The best solution is to use QSort.  Those who don't have QSort
  222.     can save some IO activity by placing a copy of the DOS Sort program in
  223.     the same directory as FDLA and renaming it to QSort.
  224.  
  225.     If you run FDLA from a batch file the program will exit with an error
  226.     level of 0 on successful completion.  An error level of 1 will be
  227.     returned to DOS if FDLA fails for any reason.
  228.  
  229.     Conclusion
  230.     ----------
  231.  
  232.     I will endeavour respond to and correct any reported bugs.  I do not
  233.     personally use FrontDoor as a mailer for my BBS however FDLA has been
  234.     beta tested at a few high traffic nodes in FidoNet 1:134 and appears to
  235.     be quite stable.  I can only respond if log file samples are sent to me
  236.     at FidoNet 1:134/75 so that I may analyze any reported problems and
  237.     make appropriate corrective action. If you send logfiles, please
  238.     indicate what version of FrontDoor you are using as well.  I've noticed
  239.     a few suttle differences in log entries which, if unknown to me, could
  240.     affect the output from FDLA.
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.                                      - 5 -
  248.  
  249.  
  250.     Strings in FD.LOG that are very important to FDLA are:
  251.  
  252.     ---
  253.     BUSY
  254.     Calling
  255.     Carrier lost
  256.     CONNECT
  257.     From
  258.     Incoming call at
  259.     Mail received
  260.     Mail transfer completed
  261.     NO CARRIER
  262.     NO DIAL
  263.     No response from remote system
  264.     Rcvd
  265.     Rejecting human caller
  266.     RING
  267.     Sent
  268.     Session handshake failure
  269.     Timeout waiting for hello packet
  270.     To
  271.     Unable to complete mail transfer
  272.     Unable to initiate transfer
  273.     Undialable node
  274.     Unexpected password
  275.     Using: Fido
  276.  
  277.     If you merge logfiles from other applications which contain any of the
  278.     foregoing strings, the output of FDLA could be unpredictable as best.
  279.     Unfortunately the FrontDoor log does not contain a unique
  280.     identification entry in the logfile such as is the case with MAX,
  281.     BINK, TICK, etc, so the strings cannot be isolated from other log
  282.     entries.
  283.  
  284.  
  285.  
  286.  
  287.  
  288.                                      - 6 -
  289.  
  290.     Please realize that although, to a non commercial user, FDLA is
  291.     freeware, it costs real out of pocket money to develop and distribute
  292.     FDLA both by myself and the SysOps who are gracious enough to
  293.     distribute FDLA over the FidoNet Software Distribution Network (SDN)
  294.     and other networks.
  295.  
  296.     The output of FDLA is not cast in stone.  I'm always open to
  297.     suggestions to improve the report or this documentation. Some users may
  298.     notice that FDLA looks a lot like BinkLA, the BinkleyTerm Log Analyzer.
  299.     That's because I wrote BinkLA. I incorporated many of BinkLA's features
  300.     in FDLA.  The soon to be released BinkLA Version 2.00 will use the same
  301.     data file output format as FDLA so other application programs will be
  302.     able to use data output from either FDLA or BinkLA to generate
  303.     statistics unique to a Network or individual SysOp.  If someone comes
  304.     up with creative applications that use FDLA or BinkLA data files, I'd
  305.     appreciate receiving a copy.
  306.  
  307.     The source code for FDLA will not be released either to the public
  308.     domain or with copyright retention.  FDLA does contain some library
  309.     calls from a commercial library which are proprietary.
  310.  
  311.     The latest version of FDLA (Beta or otherwise) will always be available
  312.     at RJ's Byteline BBS, FidoNet 1:134/75, using magic file name FDLA or
  313.     may be downloaded from File Area 1 without prior registration.  My
  314.     system presently uses a Courier HST DS V32b V42b modem for high speed
  315.     V32 and HST connections.
  316.  
  317.     A sample output of FDLA FDLARpt.Txt file is included as Annex A to this
  318.     document file.  Field and record descriptions for the files created by
  319.     FDLA are included as Annex B.
  320.  
  321.     Enjoy.....
  322.  
  323.                                  Yours truly,
  324.  
  325.  
  326.                                 R.J. (Bob) Ross
  327.  
  328.  
  329.  
  330.  
  331.                                                            Annex A
  332.  
  333.     Sample output of FDLARpt.Txt.  Please note portions of Part I and Part
  334.     II have been removed to shorten the sample.
  335.  
  336.  
  337. FD.LOG                                                     FDLA Version 1.01
  338.                                POSTMASTER
  339.                   FrontDoor Log Statistics for the period
  340.             From Tue 03 Sep 91  0:21:50  to  Thu 05 Sep 91  0:12:47
  341. ┌──────────────────┬────────────────────────────────────┬──────────────────┐
  342. │░░░░░░░░░░░░░░░░░░│ Part I - Message Transfers & Calls │░░░░░░░░░░░░░░░░░░│
  343. ╞══════════════╤═══╧════════════════╤═══════════════════╧═════╤══════╤═════╡
  344. │Zone:Net/Node │   Telephone Calls  │       Message Bytes     │  CPS │ Tran│
  345. │    Number    │ Out │ Connect │ In │ Outgoing   │  Incoming  │  Avg │  Min│
  346. ╞══════════════╧═════╧═════════╧════╧════════════╧════════════╧══════╧═════╡
  347. │1:134/0          27      21      6     103,948        69,161    739    3.9│
  348. │1:134/1           5      10      7      22,669       221,734   1357    3.0│
  349. │1:134/10         23      15      5      46,318        13,009    674    1.5│
  350. │1:134/11         13      13      0      31,300             0    601    0.9│
  351. │1:134/93         16      20      8      10,359         1,091    212    0.9│
  352. │1:358/1           0       2      2      55,364         1,383   1351    0.7│
  353. │1:381/61          1       1      0           0         1,342    671    0.0│
  354. ├──────────────────────────────────────────────────────────────────────────┤
  355. │ TOTALS        1219     865    157   4,635,721       474,697    341  249.8│
  356. ╘══════════════════════════════════════════════════════════════════════════╛
  357.  
  358. ┌───────────────────┬──────────────────────────────────┬───────────────────┐
  359. │░░░░░░░░░░░░░░░░░░░│ PART II - Network File Transfers │░░░░░░░░░░░░░░░░░░░│
  360. ╞══════════════╤════╧═══════════════╤══════════════════╧══════╤══════╤═════╡
  361. │Zone:Net/Node │                    │       File Bytes        │  CPS │ Tran│
  362. │    Number    │     File Names     │ Outgoing   │  Incoming  │ Rate │  Min│
  363. ╞══════════════╧════════════════════╧════════════╧════════════╧══════╧═════╡
  364. │1:134/0            FNEWS835.LZH              0        22,722   1623    0.2│
  365. │1:134/500          ECHO_INT.LST         19,586             0    233    1.4│
  366. │1:134/93           00860002.REQ              0            13      0    0.0│
  367. │1:134/93           00860002.REQ              0            13      0    0.0│
  368. ├──────────────────────────────────────────────────────────────────────────┤
  369. │ TOTALS                 7               33,929        22,775    354    2.7│
  370. ╘══════════════════════════════════════════════════════════════════════════╛
  371.  
  372. ┌───────────────────┬──────────────────────────────────┬───────────────────┐
  373. │░░░░░░░░░░░░░░░░░░░│ PART III - Network Session Costs │░░░░░░░░░░░░░░░░░░░│
  374. ╞══════════════╤════╧═══════════════╤══════════════════╧══════╤════════════╡
  375. │Zone:Net/Node │     Logged At      │       Session Time      │    Cost    │
  376. │    Number    │  Date   │   Time   │     Hrs │ Mins │ Secs   │            │
  377. ╞══════════════╧═════════╧══════════╧═════════╧══════╧════════╧════════════╡
  378. │1:381/61       04 Sep 91   6:31:50        0       0    21       $ 0.42    │
  379. ╘══════════════════════════════════════════════════════════════════════════╛
  380.  
  381. ┌───────────────────┬──────────────────────────────────┬───────────────────┐
  382. │░░░░░░░░░░░░░░░░░░░│    PART IV - Undialable Nodes    │░░░░░░░░░░░░░░░░░░░│
  383. ╞═══════════════════╧══════════════════════════════════╧═══════════════════╡
  384. │1:134/102           1:134/15            1:134/25                  1:134/45│
  385. │1:134/49            1:134/79            1:134/80                  1:134/81│
  386. ╘══════════════════════════════════════════════════════════════════════════╛
  387.  
  388. ┌──────────────────────────┬────────────────────┬──────────────────────────┐
  389. │░░░░░░░░░░░░░░░░░░░░░░░░░░│ PART  V - SUMMARY  │░░░░░░░░░░░░░░░░░░░░░░░░░░│
  390. ╞══════════════════════════╧════╤═══════════════╧══════════════════════════╡
  391. │ BBS Callers at  9600   =    1 │ Message Bytes Transferred    =  5,110,418│
  392. │                 2400   =   17 │ File Bytes Transferred       =     56,704│
  393. │                 1200   =    0 │ TOTAL Bytes Transferred      =  5,167,122│
  394. │                 Other  =    0 ├──────────────────────────────────────────┤
  395. │                               │ Message Connect Time         =        4.2│
  396. │ TOTAL BBS Callers      =   18 │ File Transfer Connect Time   =        0.0│
  397. │                               │ TOTAL Connect Time (Hours)   =        4.2│
  398. │ Rejected BBS Calls     =    5 │ TOTAL Network Session Costs  =   $   0.42│
  399. │                               ├──────────────────────────────────────────┤
  400. │                               │ Unsuccessful Connect Attempts=        511│
  401. └───────────────────────────────┴──────────────────────────────────────────┘
  402.  
  403.  
  404.                                                            Annex B
  405.  
  406.     Record description for file FDLARpt.Dat
  407.  
  408.        Field       Data Type                   Remarks
  409.     -----------------------------------------------------------------------
  410.     ZoneNetNode     STRING         A fixed length string of 15 characters
  411.                                    containing the Zone:Net/Node number.
  412.  
  413.     CallsOut        INTEGER        Positive numbers up to 32,767 which
  414.                                    contains a count of the number of
  415.                                    outgoing telephone calls.
  416.  
  417.     Connect         INTEGER        A count of the number of successful
  418.                                    telephone connects which includes both
  419.                                    outgoing and incoming connects.
  420.  
  421.     CallsIn         INTEGER        A count of the number of incoming
  422.                                    telephone calls.
  423.  
  424.     MByteOut        LONG           Positive numbers up to 2,147,483,647
  425.                                    which contains the total number of
  426.                                    message bytes transmitted to a
  427.                                    ZoneNetNode.
  428.  
  429.     MByteIn         LONG           Total number of message bytes received
  430.                                    from a ZoneNetNode.
  431.  
  432.     MTimeOut        INTEGER        Total transmission time (in seconds) to
  433.                                    transmit the total bytes in MByteOut.
  434.  
  435.     MTimeIn         INTEGER        Total transmission time (in seconds) to
  436.                                    receive the total bytes in MByteIn.
  437.  
  438.     MByteOutIn      LONG           MByteOut + MByteIn
  439.  
  440.     MTimeOutIn      LONG           MTimeOut + MTimeIn
  441.  
  442.     MAvgCPS         INTEGER        MByteOutIn \ MTimeOutIn
  443.  
  444.     MTimeMinute     SINGLE         precision floating point decimal.  Total
  445.                                    transfer time (MTimeOut + MTimeIn) / 60.
  446.  
  447.  
  448.  
  449.  
  450.                                      - 2 -
  451.  
  452.     Record description for temporary work files FDLATmp.$$$ & FDLATmp.$$S
  453.  
  454.        Field       Data Type                   Remarks
  455.     -----------------------------------------------------------------------
  456.  
  457.     ZoneNetNode     STRING         Fixed Length 15 characters contains
  458.                                    Zone:Net/Node number.
  459.  
  460.     MCallsOut       INTEGER        Number of telephone calls out.  Always 1
  461.                                    or 0.
  462.  
  463.     MConnect        INTEGER        Number of successful telephone connects.
  464.                                    Always 1 or 0.
  465.  
  466.     MCallsIn        INTEGER        Number of telephone calls in.  Always 1
  467.                                    or 0.
  468.  
  469.     MByteOut        LONG           Number of mail bytes transmitted during
  470.                                    a mail session.
  471.  
  472.     MByteIn         LONG           Number of mail bytes received during a
  473.                                    mail session.
  474.  
  475.     MTimeOut        INTEGER        Number of seconds to transmit MByteOut.
  476.  
  477.     MTimeIn         INTEGER        Number of seconds to receive MByteIn.
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.                                      - 3 -
  485.  
  486.     Record description for FDLATmpF.$$$ & FDLATmpF.$$S
  487.  
  488.        Field       Data Type                   Remarks
  489.     -----------------------------------------------------------------------
  490.     ZoneNetNode     STRING         Fixed length string of 15 characters
  491.                                    containing the Zone:Net/Node number.
  492.  
  493.     FileNm          STRING         Fixed length string of 12 characters
  494.                                    containing the outgoing/incoming DOS
  495.                                    filename.
  496.  
  497.     FileByteOut     LONG           Size in bytes of transmitted file.
  498.  
  499.     FileByteIn      LONG           Size in bytes of received file.
  500.  
  501.     FileCPS         INTEGER        Transmission CPS of outgoing/incoming
  502.                                    file.
  503.  
  504.  
  505.     Record description for FDLATmpU.$$$ & FDLATmpU.$$S
  506.  
  507.        Field       Data Type                   Remarks
  508.     -----------------------------------------------------------------------
  509.  
  510.     ZoneNetNode     STRING         Fixed length string of 15 characters
  511.                                    containing the Zone:Net/Node number.
  512.  
  513.  
  514.  
  515.  
  516.